Computing systems, such as systems having servers and databases supporting multiple users over a network, may utilize various techniques to provide data reliability in the event of a device failure—such as a failure of a primary database. For example, the contents of a database may be replicated to other mass secondary or backup storage devices, and an image of the state of the computing system may be periodically saved as well to secondary storage devices. In the event of a device failure or a disaster affecting the primary database, a secondary storage device is made to functionally replace the primary storage device for the computing system.
As recognized by the present inventors, after a device failure in such an arrangement, the time for transitioning from the primary to the secondary system devices may be lengthy and result in delays in the completion of computing operations that were scheduled prior to the device failure. There also may be delays in users having network access to a working computing system when the primary network or primary storage device become unavailable. Such delays may result in significant loss of revenues for businesses that rely on computing systems, or may result in an inferior quality of service experienced by the user. In the financial industry, downtime of a brokerage computing network may result in the loss of millions of dollars in revenues to the brokerage firm and to its customers.
For example, and as recognized by the present inventors, if a primary server (such as an application server) or a database fails or becomes unavailable due to a disaster, then the secondary or backup system needs to be mounted, the state of the computing system (including each of the various states of all of the user devices in the system) needs to be restored and rectified with the state of the data stored on the secondary storage device (i.e., all pointers need to be loaded into the backup system), and all user connections to the computing system need to be restored or re-established. Such a transitioning process may involve a delay of, for example, fifteen minutes to complete. During this delay period, users may be unable to continue with their use of their computing system. Further, the state of the computing system—including the various states of all of the user devices—may only be recoverable to the time at which the last image of the computing system was persistently saved. Hence, particular users may experience a loss of some data or may be unable to complete time-critical computing operations.
Moreover, as recognized by the present inventors, e-mail systems may be subject to unpredictable downtime or temporary failures which can seriously hamper the operations of a business or other entity during the downtime. E-mail users send critical instructions, communications, and e-mail attachments including electronic documents, and may of these items must be delivered or received in a timely manner. Hence, any disruption or downtime of an e-mail system may result in lost business or revenues due to the e-mail system downtime.
As recognized by the present inventors, what is needed is a system and method for data processing and/or data storage that provides continuous e-mail operations independent of device failure or disaster—so that failures or unavailability of system devices, such as application servers or databases, are transparent to end users.
It is against this background that various embodiments of the present invention were developed.